package cn.hchaojie.javase.day07;

import java.util.Timer;
import java.util.TimerTask;

import org.junit.Test;

/**
 * Timer: 计时器
 * 
 * @author hchaojie
 *
 */
public class TestTimer {
	// 延迟2秒打印一句话
	@Test
	public void test1() throws InterruptedException {
		Timer timer = new Timer();
		
		// 延迟5秒去做一件事情，具体要做什么事情，需要在task类里面定义
		MyTask task = new MyTask();		// 任务是异步的，会在另外一个线程里面跑
		timer.schedule(task, 2000);
		
		// 当前线程睡眠6秒，等待上面的线程结束
		Thread.sleep(3000);
	}
	
	// 每隔两秒打印一句话
	@Test
	public void test2() throws InterruptedException {
		Timer timer = new Timer();
		
		// 第一个参数是任务，第二个是延迟，第三个是运行周期
		timer.schedule(new MyTask(), 0, 2000);
		
		Thread.sleep(10000);
	}
}

class MyTask extends TimerTask {
	@Override
	public void run() {
		// run里面实现具体的任务。
		System.out.println("任务已经跑起来了。。。");
	}
}
